<?php

App::uses('AppController', 'Controller');

class CodetblsController extends AppController {

	var $name = 'Codetbls';
	var $uses = array('Codetbl');



	/**
	 * Danh sach liên hệ
	 *
	 * @param type  meta
	 * @return type  meta
	 * @access public
	 */
	function admin_index()
	{
        $paginate = $this->paginate;
        //$paginate['fields'] = array('info', 'address', 'create_info.status', 'create_info.created', 'type');

        $als = &$this->als;

        // get condition from post data
        if (!empty($this->request->data)) {
            $this->_remove_empty_condition();

            // truong hop tim kiem
            if($this->request->data[$als]['action'] == 'search'){
                unset($this->request->data[$als]['action']);

                // reset post data
                $this->condPost = array();

                // create field like
                $like_fields = array($als . '.name', $als . '.value');

                // get condition after filter, get cond form $this->condPost
                $this->postConditions($this->request->data, '', $like_fields, $als);

                $this->Session->write($this->name . '_search', $this->condPost);
                $this->Session->write($this->name . '_data', $this->request->data);

            } elseif($this->request->data[$als]['action'] == 'update' ){

            	if(!empty($this->request->data[$als]['status'])) {

        			$check = false;
					if(!empty($this->request->data['del'])) {
	                	foreach($this->request->data['del'] as $id => $v){
		                    if($v){
		                    	$check = true;
		                    	// Trường hợp xóa
        						if( $this->request->data[$als]['status'] == 9) {
		                        	$this->Codetbl->delete((int)$id);
        						} else {
        							$this->Codetbl->id = (int)$id;
				                    $this->Codetbl->saveField('status', (int)$this->request->data[$als]['status']);
        						}
		                    }
		                }
	                }

	                $this->request->data = null;

	                if($check) {
						$this->Session->setFlash(__('Cập nhật trạng thái thành công'), 'success');
	                } else {
						$this->Session->setFlash(__('Bạn chưa chọn mẩu tin.'), 'error');
	                }
            	} else {
            		$this->Session->setFlash(__('Bạn chưa chọn hành động.'), 'error');
            	}
            }
        }

        // Get method
        if ($this->Session->check($this->name . '_search')) {
            $this->condPost = $this->Session->read($this->name . '_search');
            $this->request->data = $this->Session->read($this->name . '_data');
        }

        if (empty($this->condPost[$als . '.status']))
            $this->condPost[$als . '.status'] = array(4,5);
        else {
            $this->condPost[$als . '.status'] = (int) $this->condPost[$als . '.status'];
        }


		$paginate['order'] = array('code1' => 'asc');
		$paginate['limit'] = 20;
		$this->paginate = $paginate;

        $items = $this->paginate($this->condPost);
		$this->set('items', $items);
		$this->set('status', $this->Codetbl->getList('COM', 'STS'));

		// thong tin hien thi cho trang
		$this->set('main_page_title', __('Mã Hệ Thống'));
        $this->set('main_page_description', __('Quản lý thông tin mã hệ thống'));

        $breadcrumb = array( array('name' => 'Mã Hệ Thống', 'url' => '') );
		$this->set('breadcrumb', $breadcrumb);
	}

	/**
	 * Them
	 *
	 * @param type  meta
	 * @return type  meta
	 * @access public
	 */
	function admin_add($id = null) {
		if(!empty($this->request->data))
		{
			$data = &$this->request->data[$this->als];

			$this->Codetbl->set($data);
			$errors = $this->Codetbl->invalidFields();

			//Save
			if(empty($errors)) {

				// kiem tra edit
				if( empty($data['id']) ) {
					unset($data['id']);
					$data['status'] = 4;
				} else {
					$data['id'] = (int)$data['id'];
				}

				if($this->Codetbl->save($data, false)) {
					$this->Session->setFlash('Lưu mã thành công.', 'success');
					$this->redirect(array('action' => 'admin_index') );
				} else {
					$this->Session->setFlash('Lưu mã thất bại. Vui lòng xem lại thông tin bên dưới', 'error');
				}
			} else {
				$this->Session->setFlash('Lưu mã thất bại.', 'error');
			}
		}

		// Truong hop show edit
		if( !empty( $id )) {
			$info = $this->Codetbl->read(null, $id);
			if(!empty($info)) {
				$this->request->data = $info;
			}
		}



		// thong tin hien thi cho trang
		$this->set('main_page_title', __('Mã Hệ Thống'));
        $this->set('main_page_description', __('Quản lý thông tin mã hệ thống'));

        $breadcrumb = array(
			array('name' => 'Mã Hệ Thống', 'url' => 'codetbls'),
			array('name' => !empty( $id ) ? 'Sửa' : 'Thêm mới')
		);
		$this->set('breadcrumb', $breadcrumb);
	}

}
